package com.hm.shopping.service;

import java.util.List;

import com.hm.common.su.bean.PageInfo;
import com.hm.common.su.bean.PageInfo.PageInfoParam;
import com.hm.shopping.vo.ShopcartVo;

/**
 * @author shishun.wang
 * @date 2018年2月9日 下午4:21:26
 * @version 1.0
 * @describe 购物车
 */
public interface ShopcartService {

	/**
	 * 加入购物车
	 * 
	 * @param goodsId
	 * @param buyerId
	 * @param goodsAttributes
	 * @param quantity
	 */
	public void joinShopcart(String goodsId, String buyerId, List<String> goodsAttributes, Integer quantity);

	/**
	 * 移除购物车
	 * 
	 * @param shopcartId
	 */
	public void removeShopcart(String shopcartId);

	/**
	 * 加载我的购物车
	 * 
	 * @param pageParam
	 * @param shopcartId
	 * @return
	 */
	public PageInfo<ShopcartVo> getShopcartList(PageInfoParam pageParam, String buyerId);

	/**
	 * 调整购物车商品数量
	 * 
	 * @param shopcartId
	 * @param count
	 */
	public void addShopcart(String shopcartId, int count);

	/**
	 * 修改购物车商品是否勾选中
	 * 
	 * @param shopcartId
	 */
	public void updateShopcartSelected(String shopcartId);
	
	/**
	 * 获取用户购物车购买商品数量
	 * @param buyerId
	 * @return
	 */
	public long getShopcartGoodsCount(String buyerId);
}
